package com.frejoys.common.vo.admin;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;

/**
 * @author wangzhicheng
 * @version 1.0
 * @date 2024/5/14 14:38
 */
@Data
public class AdminStoreActivityInfoVo {

    @Schema(type = "Integer", name = "id", description = "店铺活动id", required = true, defaultValue = "1")
    private Integer id;

    // 活动名称
    @Schema(type = "String", name = "activityName", description = "活动名称", required = true, defaultValue = "排队免单")
    private String activityName;

    // 店铺id
    @Schema(type = "Integer", name = "storeId", description = "店铺id", required = true, defaultValue = "1")
    private Integer storeId;

    // 店名
    @Schema(type = "String", name = "storeName", description = "店名", required = true, defaultValue = "1")
    private String storeName;

    // 当前金额
    @Schema(type = "BigDecimal", name = "money", description = "当前金额", required = true, defaultValue = "1")
    private BigDecimal money;

    // 总累计金额
    @Schema(type = "BigDecimal", name = "totalMoney", description = "总累计金额", required = true, defaultValue = "1")
    private BigDecimal totalMoney;

    // 当前参与人数
    @Schema(type = "Integer", name = "personCount", description = "当前参与人数", required = true, defaultValue = "1")
    private Integer personCount;

    // 总参与人数
    @Schema(type = "Integer", name = "totalPersonCount", description = "总参与人数", required = true, defaultValue = "1")
    private Integer totalPersonCount;

    // 返利比例
    @Schema(type = "Integer", name = "rebateRatio", description = "返利比例", required = true, defaultValue = "1")
    private Integer rebateRatio;

    // 返利最大单笔金额限制，0无限制
    @Schema(type = "BigDecimal", name = "rebateMaxMoney", description = "返利最大单笔金额限制，0无限制", required = true, defaultValue = "1")
    private BigDecimal rebateMaxMoney;

    // 推广比例
    @Schema(type = "Integer", name = "promotionRatio", description = "推广比例", required = true, defaultValue = "1")
    private Integer promotionRatio;

    // 佣金比例
    @Schema(type = "Integer", name = "commissionRatio", description = "佣金比例", required = true, defaultValue = "1")
    private Integer commissionRatio;

    // 活动开始时间
    @Schema(type = "Integer", name = "startTime", description = "活动开始时间", required = true, defaultValue = "1")
    private Integer startTime;

    // 活动结束时间
    @Schema(type = "Integer", name = "endTime", description = "活动结束时间", required = true, defaultValue = "1")
    private Integer endTime;

    // 活动类型：1排队返利
    @Schema(type = "Integer", name = "type", description = "1排队免单，2共享股东", required = true, defaultValue = "1")
    private Integer type;

    // 上架状态：0下架中，1申请上架，2上架中
    @Schema(type = "Integer", name = "shelves", description = "上架状态：0下架中，1申请上架，2上架中", required = true, defaultValue = "1")
    private Integer shelves;
}
